"OnAfterData" Događaj
"OnAfterData" Događaj
Ovaj događaj se pokrećenakon što je objekt izvještaja ispunjen podacima iz izvora s kojim je povezan. Koristite ovaj događaj za pristup vrijednosti polja baze podataka ili izrazu sadržanom u objektu. Ova vrijednost se smješta u sustavsku varijablu “Value” koja je dostupna samo u ovom događaju. Dakle, ako dva objekta “Text” sadrže izraze [Table1.“Field1”] i [<Table2.“Field1”> + 10] vrijednosti ovih izraza mogu se koristiti pozivanjem varijable “Value” za objekte:
ako Value > 3000 onda
Memo1.Color := clRed
što je jednostavnije od pisanja nečega poput ovoga:
ako <Table1."Field1"> > 3000 onda
Memo1.Color := clRed
Korištenje “Value” umjesto izraza omogućuje vam pisanje jednog višenamjenskog handlera za “OnAfterData” događaj koji se može povezati s nekoliko objekata.
Molimo vas da obratite pažnju na nešto drugo - ako objekt sadrži nekoliko izraza (na primjer '[expr1] [expr2]') to je vrijednost posljednjeg izraza koja se prenosi u varijablu “Value”.
“OnAfterData” događaj je idealan za izračunavanje visine i širine objekata kao što su “Text”. To jest, ako je potrebna točna visina rastegnutog “Text” objekta koji sadrži izraz u skripti, možete koristiti ovaj kod u “OnAfterData” događaju:
var
MemoHeight: Extended;
početak
MemoHeight := TfrxMemoView(Sender).CalcHeight;
kraj;
Ako bi se ovaj kod koristio u “OnBeforePrint” događaju, rezultat bi bila visina objekta koji sadrži izraz prije nego što se izraz evaluira, a ne njegova stvarna vrijednost prilikom ispisa.